package com.ITArmy.dao;

import com.ITArmy.beans.Question;
import org.apache.ibatis.annotations.Param;

import java.util.Date;
import java.util.List;

public interface QuestionMapper {
    /**
     * 删除
     * @param qId qid
     * @return int
     */
    int deleteByPrimaryKey(Long qId);

    /**
     * 批量删除
     * @param ids ids
     * @return int
     */
    int deleteManyByIds(String[] ids);

    /**
     * 新增问题
     * @param record record
     * @return int
     */
    int insert(Question record);

    /**
     * 新增问题部分内容
     * @param record record
     * @return int
     */
    int insertSelective(Question record);

    /**
     * 根据qid查找问题信息
     * @param qId qid
     * @return question
     */
    Question selectByPrimaryKey(Long qId);



    /**
     * 更新问题部分内容
     * @param record record
     * @return int
     */
    int updateByPrimaryKeySelective(Question record);

    /**
     * 更新问题内容
     * @param record record
     * @return int
     */
    int updateByPrimaryKey(Question record);

    /**
     * 遍历所有问题
     *
     * @return list
     */
    List<Question> findAllQuestion();

    /**
     * 根据问题标题模糊搜索问题信息
     *
     * @param title title
     * @return list
     */
    List<Question> findQuestionByTitle(@Param("title") String title);

    /**
     * 根据类型查找问题信息
     *
     * @param tid tid
     * @return list
     */
    List<Question> findQuestionByType(@Param("tid") Integer tid);

    /**
     * 问题被解决
     *
     * @param ruid ruid
     * @param qid qid
     * @return int
     */
    int solveQuestion(@Param("ruid") long ruid,@Param("qid") long qid);

    /**
     *获取赏金
     *
     * @param qid qid
     * @return double
     */
    double getReward(@Param("qid") long qid);

}